# import matplotlib.pyplot as plt
# import numpy as np
# x = np.arange(0, 4 * np.pi, 0.1)
# y = np.sin(x)
# z = np.cos(x)
#
# plt.plot(x, y, x, z)
# plt.show()

# import matplotlib.pyplot as plt
# import numpy as np
#
# #plot 1:
# xpoints = np.array([0, 6])
# ypoints = np.array([0, 100])
#
# # 1 * 2 大小的第1张
# plt.subplot(1, 2, 1)
# plt.plot(xpoints,ypoints)
# plt.title("plot 1")
#
# #plot 2:
# x = np.array([1, 2, 3, 4])
# y = np.array([1, 4, 9, 16])
#
# # 1 * 2 大小的第2张
# plt.subplot(1, 2, 2)
# plt.plot(x,y)
# plt.title("plot 2")
#
# # 总标题
# plt.suptitle("Test")
# plt.show()

# import matplotlib.pyplot as plt
# import numpy as np
#
# #plot 1:
# x = np.array([0, 6])
# y = np.array([0, 100])
#
# # 2 * 2 大小的第1张
# plt.subplot(2, 2, 1)
# plt.plot(x,y)
# plt.title("plot 1")
#
# #plot 2:
# x = np.array([1, 2, 3, 4])
# y = np.array([1, 4, 9, 16])
#
# # 2 * 2 大小的第2张
# plt.subplot(2, 2, 2)
# plt.plot(x,y)
# plt.title("plot 2")
#
# #plot 3:
# x = np.array([1, 2, 3, 4])
# y = np.array([3, 5, 7, 9])
#
# # 2 * 2 大小的第3张
# plt.subplot(2, 2, 3)
# plt.plot(x,y)
# plt.title("plot 3")
#
# #plot 4:
# x = np.array([1, 2, 3, 4])
# y = np.array([4, 5, 6, 7])
#
# # 2 * 2 大小的第4张
# plt.subplot(2, 2, 4)
# plt.plot(x,y)
# plt.title("plot 4")
#
# plt.suptitle("Test")
# plt.show()

import matplotlib.pyplot as plt
import numpy as np

# 创建好幕布，子图，直接对子图操作，面向对象
# fig：幕布   axes：子图
fig, axes = plt.subplots(2, 2, sharex=True)

# 将（0， 2 * pi）均分成num份
x = np.linspace(0, 2 * np.pi, 400)

y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)

fig.suptitle("math test")

# 在这个子图上操作，画图
axes[0, 0].plot(x, y1)
axes[0, 0].set_title("sin")

axes[0, 1].plot(x, y2)
axes[0, 1].set_title("cos")

axes[1, 0].plot(x, y3)
axes[1, 0].set_title("tan")

axes[1, 1].plot(x, y4)
axes[1, 1].set_title("exp")

# 自动调节子图间的距离
plt.tight_layout()
plt.show()
